<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=utf-8">
<meta http-equiv="cache-control" content="no-cache">
<title>Genivia - wsseapi-lite.c File Reference</title>
<link href="genivia_tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="genivia_content.css" rel="stylesheet" type="text/css">
</head>
<body>
<div id="top">
 <div id="titlearea">
  <table height="72px" width="100%" cellspacing="0" cellpadding="0">
   <tbody>
    <tr>
     <td width="10%">&nbsp;</td>
     <td width="175px"><a href="https://www.genivia.com"><img alt="Genivia" src="GeniviaLogo2_trans_noslogan.png"/></a></td>
     <td class="tab_home"><a href="https://www.genivia.com">Home</a></td>
     <td class="tab_home"><a href="https://www.genivia.com/docs.html">Documentation</a></td>
     <td>
      <div style="float: right; font-size: 18px; font-weight: bold;">wsseapi-lite.c File Reference</div>
      <br>
      <div style="float: right; font-size: 10px;">updated Fri Jul 17 2020 by Robert van Engelen</div>
     </td>
     <td width="10%">&nbsp;</td>
    </tr>
   </tbody>
  </table>
 </div>
<!-- Generated by Doxygen 1.8.11 -->
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
      <li><a href="annotated.html"><span>Classes</span></a></li>
      <li class="current"><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="files.html"><span>File&#160;List</span></a></li>
      <li><a href="globals.html"><span>File&#160;Members</span></a></li>
    </ul>
  </div>
<div id="nav-path" class="navpath">
  <ul>
<li class="navelem"><a class="el" href="dir_b4c3aec6cd8f28418150dce663061cfa.html">plugin</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#define-members">Macros</a> &#124;
<a href="#func-members">Functions</a> &#124;
<a href="#var-members">Variables</a>  </div>
  <div class="headertitle">
<div class="title">wsseapi-lite.c File Reference</div>  </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><code>#include &quot;<a class="el" href="wsseapi-lite_8h.html">wsseapi-lite.h</a>&quot;</code><br />
</div><div class="textblock"><div class="dynheader">
Include dependency graph for wsseapi-lite.c:</div>
<div class="dyncontent">
<div class="center"><img src="wsseapi-lite_8c__incl.png" border="0" usemap="#wsseapi-lite_8c" alt=""/></div>
<map name="wsseapi-lite_8c" id="wsseapi-lite_8c">
<area shape="rect" id="node3" href="wsseapi-lite_8h.html" title="wsseapi&#45;lite.h" alt="" coords="5,83,107,111"/>
</map>
</div>
</div><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
Macros</h2></td></tr>
<tr class="memitem:a12d6f49d99323ae66d2a6ee154f90469"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="wsseapi-lite_8c.html#a12d6f49d99323ae66d2a6ee154f90469">SOAP_WSSE_CLKSKEW</a>&#160;&#160;&#160;(300)</td></tr>
<tr class="separator:a12d6f49d99323ae66d2a6ee154f90469"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:ab978172dc658125b45d8f1dc849fae0c"><td class="memItemLeft" align="right" valign="top">SOAP_FMAC1 struct <a class="el" href="struct__wsse_____security.html">_wsse__Security</a> *SOAP_FMAC2&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="wsseapi-lite_8c.html#ab978172dc658125b45d8f1dc849fae0c">soap_wsse_add_Security</a> (struct soap *soap)</td></tr>
<tr class="memdesc:ab978172dc658125b45d8f1dc849fae0c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Adds Security header element.  <a href="#ab978172dc658125b45d8f1dc849fae0c">More...</a><br /></td></tr>
<tr class="separator:ab978172dc658125b45d8f1dc849fae0c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af2f86a9d3e7514979ef02359f49b16fc"><td class="memItemLeft" align="right" valign="top">SOAP_FMAC1 struct <a class="el" href="struct__wsse_____security.html">_wsse__Security</a> *SOAP_FMAC2&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="wsseapi-lite_8c.html#af2f86a9d3e7514979ef02359f49b16fc">soap_wsse_add_Security_actor</a> (struct soap *soap, const char *actor)</td></tr>
<tr class="memdesc:af2f86a9d3e7514979ef02359f49b16fc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Adds Security header element with actor or role attribute.  <a href="#af2f86a9d3e7514979ef02359f49b16fc">More...</a><br /></td></tr>
<tr class="separator:af2f86a9d3e7514979ef02359f49b16fc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a09f50a6e0f0e726f7e895c7399d5cfb2"><td class="memItemLeft" align="right" valign="top">SOAP_FMAC1 void SOAP_FMAC2&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="wsseapi-lite_8c.html#a09f50a6e0f0e726f7e895c7399d5cfb2">soap_wsse_delete_Security</a> (struct soap *soap)</td></tr>
<tr class="memdesc:a09f50a6e0f0e726f7e895c7399d5cfb2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Deletes Security header element.  <a href="#a09f50a6e0f0e726f7e895c7399d5cfb2">More...</a><br /></td></tr>
<tr class="separator:a09f50a6e0f0e726f7e895c7399d5cfb2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3a51d2b0d1632e4ecfd69b340805ff98"><td class="memItemLeft" align="right" valign="top">SOAP_FMAC1 struct <a class="el" href="struct__wsse_____security.html">_wsse__Security</a> *SOAP_FMAC2&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="wsseapi-lite_8c.html#a3a51d2b0d1632e4ecfd69b340805ff98">soap_wsse_Security</a> (struct soap *soap)</td></tr>
<tr class="memdesc:a3a51d2b0d1632e4ecfd69b340805ff98"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns Security header element if present.  <a href="#a3a51d2b0d1632e4ecfd69b340805ff98">More...</a><br /></td></tr>
<tr class="separator:a3a51d2b0d1632e4ecfd69b340805ff98"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af249d3608d7d3b847344a3e8edca7d7e"><td class="memItemLeft" align="right" valign="top">SOAP_FMAC1 int SOAP_FMAC2&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="wsseapi-lite_8c.html#af249d3608d7d3b847344a3e8edca7d7e">soap_wsse_add_Timestamp</a> (struct soap *soap, const char *id, time_t lifetime)</td></tr>
<tr class="memdesc:af249d3608d7d3b847344a3e8edca7d7e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Adds Timestamp element with optional expiration date+time (lifetime).  <a href="#af249d3608d7d3b847344a3e8edca7d7e">More...</a><br /></td></tr>
<tr class="separator:af249d3608d7d3b847344a3e8edca7d7e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1e1e66c48396cb8c3f0416bdf19f0e39"><td class="memItemLeft" align="right" valign="top">SOAP_FMAC1 struct _wsu__Timestamp *SOAP_FMAC2&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="wsseapi-lite_8c.html#a1e1e66c48396cb8c3f0416bdf19f0e39">soap_wsse_Timestamp</a> (struct soap *soap)</td></tr>
<tr class="memdesc:a1e1e66c48396cb8c3f0416bdf19f0e39"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns Timestamp element if present.  <a href="#a1e1e66c48396cb8c3f0416bdf19f0e39">More...</a><br /></td></tr>
<tr class="separator:a1e1e66c48396cb8c3f0416bdf19f0e39"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1788006a119b3d4ad7fc11d12d6a880d"><td class="memItemLeft" align="right" valign="top">SOAP_FMAC1 int SOAP_FMAC2&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="wsseapi-lite_8c.html#a1788006a119b3d4ad7fc11d12d6a880d">soap_wsse_verify_Timestamp</a> (struct soap *soap)</td></tr>
<tr class="memdesc:a1788006a119b3d4ad7fc11d12d6a880d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Verifies the Timestamp/Expires element against the current time.  <a href="#a1788006a119b3d4ad7fc11d12d6a880d">More...</a><br /></td></tr>
<tr class="separator:a1788006a119b3d4ad7fc11d12d6a880d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad85b1bb86f3640e92755065370afae67"><td class="memItemLeft" align="right" valign="top">SOAP_FMAC1 int SOAP_FMAC2&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="wsseapi-lite_8c.html#ad85b1bb86f3640e92755065370afae67">soap_wsse_add_UsernameTokenText</a> (struct soap *soap, const char *id, const char *username, const char *password)</td></tr>
<tr class="memdesc:ad85b1bb86f3640e92755065370afae67"><td class="mdescLeft">&#160;</td><td class="mdescRight">Adds UsernameToken element with optional clear-text password.  <a href="#ad85b1bb86f3640e92755065370afae67">More...</a><br /></td></tr>
<tr class="separator:ad85b1bb86f3640e92755065370afae67"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0b840da9c3dd8e21cf47511137d24aa7"><td class="memItemLeft" align="right" valign="top">SOAP_FMAC1 struct <a class="el" href="struct__wsse_____username_token.html">_wsse__UsernameToken</a> *SOAP_FMAC2&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="wsseapi-lite_8c.html#a0b840da9c3dd8e21cf47511137d24aa7">soap_wsse_UsernameToken</a> (struct soap *soap, const char *id)</td></tr>
<tr class="memdesc:a0b840da9c3dd8e21cf47511137d24aa7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns UsernameToken element if present.  <a href="#a0b840da9c3dd8e21cf47511137d24aa7">More...</a><br /></td></tr>
<tr class="separator:a0b840da9c3dd8e21cf47511137d24aa7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab563eaf37df9e509d47ffc40ebba0d60"><td class="memItemLeft" align="right" valign="top">SOAP_FMAC1 const char *SOAP_FMAC2&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="wsseapi-lite_8c.html#ab563eaf37df9e509d47ffc40ebba0d60">soap_wsse_get_Username</a> (struct soap *soap)</td></tr>
<tr class="memdesc:ab563eaf37df9e509d47ffc40ebba0d60"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns UsernameToken/username string or wsse:FailedAuthentication fault.  <a href="#ab563eaf37df9e509d47ffc40ebba0d60">More...</a><br /></td></tr>
<tr class="separator:ab563eaf37df9e509d47ffc40ebba0d60"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac8883e13b448313da65906fd0f5eb16f"><td class="memItemLeft" align="right" valign="top">SOAP_FMAC1 int SOAP_FMAC2&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="wsseapi-lite_8c.html#ac8883e13b448313da65906fd0f5eb16f">soap_wsse_verify_Password</a> (struct soap *soap, const char *password)</td></tr>
<tr class="memdesc:ac8883e13b448313da65906fd0f5eb16f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Verifies the supplied password or sets wsse:FailedAuthentication fault.  <a href="#ac8883e13b448313da65906fd0f5eb16f">More...</a><br /></td></tr>
<tr class="separator:ac8883e13b448313da65906fd0f5eb16f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac243be39e8b0e09821d37e270cf09e0c"><td class="memItemLeft" align="right" valign="top">SOAP_FMAC1 int SOAP_FMAC2&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="wsseapi-lite_8c.html#ac243be39e8b0e09821d37e270cf09e0c">soap_wsse_sender_fault_subcode</a> (struct soap *soap, const char *faultsubcode, const char *faultstring, const char *faultdetail)</td></tr>
<tr class="memdesc:ac243be39e8b0e09821d37e270cf09e0c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets sender SOAP Fault (sub)code for server fault response.  <a href="#ac243be39e8b0e09821d37e270cf09e0c">More...</a><br /></td></tr>
<tr class="separator:ac243be39e8b0e09821d37e270cf09e0c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7664a7a5431caf670938d7c29ba3a923"><td class="memItemLeft" align="right" valign="top">SOAP_FMAC1 int SOAP_FMAC2&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="wsseapi-lite_8c.html#a7664a7a5431caf670938d7c29ba3a923">soap_wsse_receiver_fault_subcode</a> (struct soap *soap, const char *faultsubcode, const char *faultstring, const char *faultdetail)</td></tr>
<tr class="memdesc:a7664a7a5431caf670938d7c29ba3a923"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets receiver SOAP Fault (sub)code for server fault response.  <a href="#a7664a7a5431caf670938d7c29ba3a923">More...</a><br /></td></tr>
<tr class="separator:a7664a7a5431caf670938d7c29ba3a923"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a816dcaad02ea3d7741539692e67fd438"><td class="memItemLeft" align="right" valign="top">SOAP_FMAC1 int SOAP_FMAC2&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="wsseapi-lite_8c.html#a816dcaad02ea3d7741539692e67fd438">soap_wsse_sender_fault</a> (struct soap *soap, const char *faultstring, const char *faultdetail)</td></tr>
<tr class="memdesc:a816dcaad02ea3d7741539692e67fd438"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets sender SOAP Fault for server fault response.  <a href="#a816dcaad02ea3d7741539692e67fd438">More...</a><br /></td></tr>
<tr class="separator:a816dcaad02ea3d7741539692e67fd438"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a21e51cf7bdaf6d0f5cc529efba28fa50"><td class="memItemLeft" align="right" valign="top">SOAP_FMAC1 int SOAP_FMAC2&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="wsseapi-lite_8c.html#a21e51cf7bdaf6d0f5cc529efba28fa50">soap_wsse_receiver_fault</a> (struct soap *soap, const char *faultstring, const char *faultdetail)</td></tr>
<tr class="memdesc:a21e51cf7bdaf6d0f5cc529efba28fa50"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets receiver SOAP Fault for server fault response.  <a href="#a21e51cf7bdaf6d0f5cc529efba28fa50">More...</a><br /></td></tr>
<tr class="separator:a21e51cf7bdaf6d0f5cc529efba28fa50"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8e22277e9dc7b4b51b86a8aac8b8d3a8"><td class="memItemLeft" align="right" valign="top">SOAP_FMAC1 int SOAP_FMAC2&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="wsseapi-lite_8c.html#a8e22277e9dc7b4b51b86a8aac8b8d3a8">soap_wsse_fault</a> (struct soap *soap, <a class="el" href="wsse_8h.html#aaade5f4816d66546a0817dade206f50f">wsse__FaultcodeEnum</a> fault, const char *detail)</td></tr>
<tr class="memdesc:a8e22277e9dc7b4b51b86a8aac8b8d3a8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets SOAP Fault (sub)code for server response.  <a href="#a8e22277e9dc7b4b51b86a8aac8b8d3a8">More...</a><br /></td></tr>
<tr class="separator:a8e22277e9dc7b4b51b86a8aac8b8d3a8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5aecbf5ab1b06aee118f149189a4008b"><td class="memItemLeft" align="right" valign="top">SOAP_FMAC1 int SOAP_FMAC2&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="wsseapi-lite_8c.html#a5aecbf5ab1b06aee118f149189a4008b">soap_wsse_set_wsu_id</a> (struct soap *soap, const char *tags)</td></tr>
<tr class="memdesc:a5aecbf5ab1b06aee118f149189a4008b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the elements that are to be extended with wsu:Id attributes. The wsu:Id attribute values are set to the string value of the tag's QName by replacing colons with hyphens to produce an xsd:ID value.  <a href="#a5aecbf5ab1b06aee118f149189a4008b">More...</a><br /></td></tr>
<tr class="separator:a5aecbf5ab1b06aee118f149189a4008b"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
Variables</h2></td></tr>
<tr class="memitem:a38dfc9981f0859b1307c302d8497c08c"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="wsseapi-lite_8c.html#a38dfc9981f0859b1307c302d8497c08c">wsse_PasswordTextURI</a> = &quot;http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText&quot;</td></tr>
<tr class="separator:a38dfc9981f0859b1307c302d8497c08c"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Macro Definition Documentation</h2>
<a class="anchor" id="a12d6f49d99323ae66d2a6ee154f90469"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define SOAP_WSSE_CLKSKEW&#160;&#160;&#160;(300)</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Clock skew between machines (in sec) to fit message expiration in window </p>

</div>
</div>
<h2 class="groupheader">Function Documentation</h2>
<a class="anchor" id="ab978172dc658125b45d8f1dc849fae0c"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">SOAP_FMAC1 struct <a class="el" href="struct__wsse_____security.html">_wsse__Security</a>* SOAP_FMAC2 soap_wsse_add_Security </td>
          <td>(</td>
          <td class="paramtype">struct soap *&#160;</td>
          <td class="paramname"><em>soap</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Adds Security header element. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">soap</td><td>context </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="struct__wsse_____security.html" title="This element defines the wsse:Security SOAP header element per Section 4. Imported element _wsse__Sec...">_wsse__Security</a> object </dd></dl>

</div>
</div>
<a class="anchor" id="af2f86a9d3e7514979ef02359f49b16fc"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">SOAP_FMAC1 struct <a class="el" href="struct__wsse_____security.html">_wsse__Security</a>* SOAP_FMAC2 soap_wsse_add_Security_actor </td>
          <td>(</td>
          <td class="paramtype">struct soap *&#160;</td>
          <td class="paramname"><em>soap</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>actor</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Adds Security header element with actor or role attribute. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">soap</td><td>context </td></tr>
    <tr><td class="paramname">actor</td><td>string </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="struct__wsse_____security.html" title="This element defines the wsse:Security SOAP header element per Section 4. Imported element _wsse__Sec...">_wsse__Security</a> object </dd></dl>

</div>
</div>
<a class="anchor" id="af249d3608d7d3b847344a3e8edca7d7e"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">SOAP_FMAC1 int SOAP_FMAC2 soap_wsse_add_Timestamp </td>
          <td>(</td>
          <td class="paramtype">struct soap *&#160;</td>
          <td class="paramname"><em>soap</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>id</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">time_t&#160;</td>
          <td class="paramname"><em>lifetime</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Adds Timestamp element with optional expiration date+time (lifetime). </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">soap</td><td>context </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">id</td><td>for signature referencing or NULL </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">lifetime</td><td>expressed in time_t units, or 0 for no expiration </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>SOAP_OK </dd></dl>

</div>
</div>
<a class="anchor" id="ad85b1bb86f3640e92755065370afae67"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">SOAP_FMAC1 int SOAP_FMAC2 soap_wsse_add_UsernameTokenText </td>
          <td>(</td>
          <td class="paramtype">struct soap *&#160;</td>
          <td class="paramname"><em>soap</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>id</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>username</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>password</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Adds UsernameToken element with optional clear-text password. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir"></td><td class="paramname">soap</td><td>context </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">id</td><td>string for signature referencing or NULL </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">username</td><td>string </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">password</td><td>string or NULL to omit the password </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>SOAP_OK</dd></dl>
<p>Passwords are sent in the clear, so transport-level encryption is required.</p>
<dl class="section note"><dt>Note</dt><dd>This release supports the use of at most one UsernameToken in the header. </dd></dl>

</div>
</div>
<a class="anchor" id="a09f50a6e0f0e726f7e895c7399d5cfb2"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">SOAP_FMAC1 void SOAP_FMAC2 soap_wsse_delete_Security </td>
          <td>(</td>
          <td class="paramtype">struct soap *&#160;</td>
          <td class="paramname"><em>soap</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Deletes Security header element. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">soap</td><td>context </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a8e22277e9dc7b4b51b86a8aac8b8d3a8"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">SOAP_FMAC1 int SOAP_FMAC2 soap_wsse_fault </td>
          <td>(</td>
          <td class="paramtype">struct soap *&#160;</td>
          <td class="paramname"><em>soap</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="wsse_8h.html#aaade5f4816d66546a0817dade206f50f">wsse__FaultcodeEnum</a>&#160;</td>
          <td class="paramname"><em>fault</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>detail</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Sets SOAP Fault (sub)code for server response. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir"></td><td class="paramname">soap</td><td>context </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">fault</td><td>is one of wsse:FaultcodeEnum </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">detail</td><td>string with optional text message </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>SOAP_FAULT </dd></dl>

</div>
</div>
<a class="anchor" id="ab563eaf37df9e509d47ffc40ebba0d60"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">SOAP_FMAC1 const char* SOAP_FMAC2 soap_wsse_get_Username </td>
          <td>(</td>
          <td class="paramtype">struct soap *&#160;</td>
          <td class="paramname"><em>soap</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Returns UsernameToken/username string or wsse:FailedAuthentication fault. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">soap</td><td>context </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>UsernameToken/username string or NULL with wsse:FailedAuthentication fault error set </dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="wsseapi-lite_8c.html#ac8883e13b448313da65906fd0f5eb16f" title="Verifies the supplied password or sets wsse:FailedAuthentication fault. ">soap_wsse_verify_Password</a></dd></dl>
<p>The returned username should be used to lookup the user's password in a dictionary or database for server-side authentication with soap_wsse_verify_Password. </p>

</div>
</div>
<a class="anchor" id="a21e51cf7bdaf6d0f5cc529efba28fa50"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">SOAP_FMAC1 int SOAP_FMAC2 soap_wsse_receiver_fault </td>
          <td>(</td>
          <td class="paramtype">struct soap *&#160;</td>
          <td class="paramname"><em>soap</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>faultstring</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>faultdetail</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Sets receiver SOAP Fault for server fault response. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir"></td><td class="paramname">soap</td><td>context </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">faultstring</td><td>fault string </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">faultdetail</td><td>detail string </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>SOAP_FAULT </dd></dl>

</div>
</div>
<a class="anchor" id="a7664a7a5431caf670938d7c29ba3a923"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">SOAP_FMAC1 int SOAP_FMAC2 soap_wsse_receiver_fault_subcode </td>
          <td>(</td>
          <td class="paramtype">struct soap *&#160;</td>
          <td class="paramname"><em>soap</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>faultsubcode</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>faultstring</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>faultdetail</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Sets receiver SOAP Fault (sub)code for server fault response. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir"></td><td class="paramname">soap</td><td>context </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">faultsubcode</td><td>sub code string </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">faultstring</td><td>fault string </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">faultdetail</td><td>detail string </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>SOAP_FAULT </dd></dl>

</div>
</div>
<a class="anchor" id="a3a51d2b0d1632e4ecfd69b340805ff98"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">SOAP_FMAC1 struct <a class="el" href="struct__wsse_____security.html">_wsse__Security</a>* SOAP_FMAC2 soap_wsse_Security </td>
          <td>(</td>
          <td class="paramtype">struct soap *&#160;</td>
          <td class="paramname"><em>soap</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Returns Security header element if present. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">soap</td><td>context </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="struct__wsse_____security.html" title="This element defines the wsse:Security SOAP header element per Section 4. Imported element _wsse__Sec...">_wsse__Security</a> object or NULL </dd></dl>

</div>
</div>
<a class="anchor" id="a816dcaad02ea3d7741539692e67fd438"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">SOAP_FMAC1 int SOAP_FMAC2 soap_wsse_sender_fault </td>
          <td>(</td>
          <td class="paramtype">struct soap *&#160;</td>
          <td class="paramname"><em>soap</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>faultstring</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>faultdetail</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Sets sender SOAP Fault for server fault response. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir"></td><td class="paramname">soap</td><td>context </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">faultstring</td><td>fault string </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">faultdetail</td><td>detail string </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>SOAP_FAULT </dd></dl>

</div>
</div>
<a class="anchor" id="ac243be39e8b0e09821d37e270cf09e0c"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">SOAP_FMAC1 int SOAP_FMAC2 soap_wsse_sender_fault_subcode </td>
          <td>(</td>
          <td class="paramtype">struct soap *&#160;</td>
          <td class="paramname"><em>soap</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>faultsubcode</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>faultstring</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>faultdetail</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Sets sender SOAP Fault (sub)code for server fault response. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir"></td><td class="paramname">soap</td><td>context </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">faultsubcode</td><td>sub code string </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">faultstring</td><td>fault string </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">faultdetail</td><td>detail string </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>SOAP_FAULT </dd></dl>

</div>
</div>
<a class="anchor" id="a5aecbf5ab1b06aee118f149189a4008b"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">SOAP_FMAC1 int SOAP_FMAC2 soap_wsse_set_wsu_id </td>
          <td>(</td>
          <td class="paramtype">struct soap *&#160;</td>
          <td class="paramname"><em>soap</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>tags</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Sets the elements that are to be extended with wsu:Id attributes. The wsu:Id attribute values are set to the string value of the tag's QName by replacing colons with hyphens to produce an xsd:ID value. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir"></td><td class="paramname">soap</td><td>context </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">tags</td><td>string of space-separated qualified and unqualified element tag names </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>SOAP_OK </dd></dl>

</div>
</div>
<a class="anchor" id="a1e1e66c48396cb8c3f0416bdf19f0e39"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">SOAP_FMAC1 struct _wsu__Timestamp* SOAP_FMAC2 soap_wsse_Timestamp </td>
          <td>(</td>
          <td class="paramtype">struct soap *&#160;</td>
          <td class="paramname"><em>soap</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Returns Timestamp element if present. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">soap</td><td>context </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>_wsu__Timestamp object or NULL </dd></dl>

</div>
</div>
<a class="anchor" id="a0b840da9c3dd8e21cf47511137d24aa7"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">SOAP_FMAC1 struct <a class="el" href="struct__wsse_____username_token.html">_wsse__UsernameToken</a>* SOAP_FMAC2 soap_wsse_UsernameToken </td>
          <td>(</td>
          <td class="paramtype">struct soap *&#160;</td>
          <td class="paramname"><em>soap</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>id</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Returns UsernameToken element if present. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir"></td><td class="paramname">soap</td><td>context </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">id</td><td>string of UsernameToken or NULL </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="struct__wsse_____username_token.html" title="This element defines the wsse:UsernameToken element per Section 4.1. Imported element _wsse__Username...">_wsse__UsernameToken</a> object or NULL</dd></dl>
<dl class="section note"><dt>Note</dt><dd>This release supports the use of at most one UsernameToken in the header. </dd></dl>

</div>
</div>
<a class="anchor" id="ac8883e13b448313da65906fd0f5eb16f"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">SOAP_FMAC1 int SOAP_FMAC2 soap_wsse_verify_Password </td>
          <td>(</td>
          <td class="paramtype">struct soap *&#160;</td>
          <td class="paramname"><em>soap</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>password</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Verifies the supplied password or sets wsse:FailedAuthentication fault. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir"></td><td class="paramname">soap</td><td>context </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">password</td><td>string to verify against </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>SOAP_OK (authorized) or SOAP_FAULT with wsse:FailedAuthentication fault</dd></dl>
<p>The verification supports both clear-text password verification only.</p>
<dl class="section note"><dt>Note</dt><dd>This release supports the use of at most one UsernameToken in the header. </dd></dl>

</div>
</div>
<a class="anchor" id="a1788006a119b3d4ad7fc11d12d6a880d"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">SOAP_FMAC1 int SOAP_FMAC2 soap_wsse_verify_Timestamp </td>
          <td>(</td>
          <td class="paramtype">struct soap *&#160;</td>
          <td class="paramname"><em>soap</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Verifies the Timestamp/Expires element against the current time. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">soap</td><td>context </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>SOAP_OK or SOAP_FAULT with wsu:MessageExpired fault</dd></dl>
<p>Sets wsu:MessageExpired fault if wsu:Timestamp is expired. The SOAP_WSSE_CLKSKEW value is used as a margin to mitigate clock skew. Keeps silent when no timestamp is supplied or no expiration date is included in the wsu:Timestamp element. </p>

</div>
</div>
<h2 class="groupheader">Variable Documentation</h2>
<a class="anchor" id="a38dfc9981f0859b1307c302d8497c08c"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const char* wsse_PasswordTextURI = &quot;http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText&quot;</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
</div><!-- contents -->
<hr class="footer">
<address class="footer">
Copyright (C) 2020, Robert van Engelen, Genivia Inc., All Rights Reserved.
</address>
<address class="footer"><small>
Converted on Fri Jul 17 2020 08:49:24 by <a target="_blank" href="http://www.doxygen.org/index.html">Doxygen</a> 1.8.11</small></address>
<br>
<div style="height: 246px; background: #DBDBDB;">
</body>
</html>
